부트로더 관리
✒️ 2025-05-22 14:22 내용 수정
1. 리눅스 관리자 패스워드 복구
- 리눅스 사용 중에 변경한 패스워드가 기억이 안 나거나, 해커가 관리자 패스워드를 변경했을 때 대처할 수 있는 방법.
- 4가지 정도 방법이 존재하고, 여기선 한 가지만 정리했다.
-
init 1 (관리자 부팅모드: 싱글모드) 로 CentOS를 부팅하고, 부트 메뉴에서
e누르기

-
커서를 "linux16" 이 있는 위치까지 내린 후, 문장 맨 뒤에
rd.break enforcing=0을 추가. -
ctrl + x를 눌러 재부팅하기

-
부팅이 완료되면 읽기 전용으로 마운트되기 때문에
# mount -o remount,rw /sysroot로 루트 파일시스템에 쓰기 권한을 부여한다.- 위에는 잘못 타이핑해서 제대로 커멘드가 안 들어간 부분들이다.

- 위에는 잘못 타이핑해서 제대로 커멘드가 안 들어간 부분들이다.
-
마운트가 완료되면
# chroot /sysroot를 입력해 /sysroot가 파일 시스템의 루트로 사용되도록 설정해준다.

-
# passwd로 비밀번호를 변경해준다. 만약 글자가 깨져서 보인다면 아래의 명령어로 시스템 언어를 변경해준다.
| 명령어 | 설명 |
|---|---|
# export LANG=en_us |
영어가 깨져서 출력되는 경우 |
# export LANG=euc-kr |
한글이 깨져서 출력되는 경우 |
![]() |
- 비밀번호 변경이 완료되었다면
# touch /.autorelabel로 변경된 패스워드를 적용 시켜주고,# exit를 두 번 입력해서 재부팅한다.

2. 부트로더 암호화하여 보안 설정
- 실제 서버를 운영할 때는 무조건 설정해줘야 한다.
- 사용자가 서버로 접근하여 위 과정처럼 시스템을 재부팅한 후 관리자 패스워드를 변경할 수 있는 문제점이 발생할 수 있다.
- 이에 리눅스는 재부팅 후 Edit(e)키를 눌러서 관리자 모드로 접근할 때 암호를 입력하게 보안 설정을 추가해주어야 한다.
- 관리자 모드로 접근할 때 사용할 아이디/암호를 생성한다.
- 총 4가지 방법 중 하나로만 선택해서 적용해야 다른 방법을 적용시켰을 때 충돌나지 않는다.
- 다른 방법으로 바꿀 때는 이전 설정을 지워야 한다.
- 2가지 방법만 기재했다.
1) /etc/grub.d/00_header 파일 수정하기
- 이 방법은
/etc/grub.d/00_header에서 관리자 아이디와 비밀번호가 보이기 때문에 위험할 수 있다.
-
# gedit /etc/grub.d/00_header로 grub 헤더 파일을 수정모드로 열어준다.

-
파일 맨 마지막에 다음 문구 추가
cat << EOF
set superusers="이름"
password 이름 비밀번호
EOF

# grub2-mkconfig -o /boot/grub2/grub.cfg으로 변경 내용을 컴파일해줘야 한다.(리눅스가 알아들을 수 있는 기계어로 번역)


2) grub2-setpassword 로 설정하기
- 이 작업은 root 로만 실행할 수 있다.
- 주의 : 부트로더 관리자 아이디는 root로 되어있다.
-
# grub2-setpassword로 비밀번호를 설정해준다.

-
cat /boot/grub2/user.cfg로 변경된 내용을 확인한다. 비밀번호가 암호화되어 쉽게 알아보기가 어렵다.

-
변경 내용을
# grub2-mkconfig -o /boot/grub2/grub.cfg로 반드시 컴파일해준다.

